﻿namespace Example.Creational
{
    using Example.Creational.Prototype;

    using Xunit;

    /// <summary>
    /// Specify the kinds of objects to create using a prototypical instance,
    /// and create new objects by copying this prototype.
    /// </summary>
    public sealed class PrototypeFacts
    {
        [Fact]
        public void clone_dolly_the_sheep()
        {
            var prototype = new Sheep("Dolly");
            var clone = prototype.Clone();

            Assert.Equal(prototype.Name, clone.Name);
        }
    }
}